/*
 * ============================================================================
 * Copyright Notice!
 * ----------------------------------------------------------------------------
 * This file contains proprietary and confidential information belonging to the
 * group of people involvled in developing this project.  Reproduction, disclosure 
 * or use without specific written authorization from project stake holders is 
 * prohibited. Please refer the readme.txt in project installation folder for more
 * specific contacts
 *
 * All rights reserved.
 * ============================================================================
 */
package edu.uwm.universitydb.framework.nontransactional.db.command;

import edu.uwm.universitydb.framework.db.command.DBCommand;
import edu.uwm.universitydb.framework.exception.DataAccessException;

/**
 * <code>NonTransactionalDBCommand</type> 
 * 
 * Contract for a non-transactional type DB Command.
 * 
 * @author Shyam Nair
 */
public interface NonTransactionalDBCommand<T> extends DBCommand<T>
{
    /**
     * <code>executeCommand(...)</code>
     * 
     * Contract for method executing the command/sql against database.
     * This method will be responsible for 
     * 
     *  1. Opening DB resources required for connection
     *  2. Executing a query against DB
     *  2. Closing the DB resources opened
     * 
     * @return
     */
    T executeCommand() throws DataAccessException;
}


/*
 * ============================================================================
 * Change History
 * ----------------------------------------------------------------------------
 * Apr 9, 2014   Shyam Nair.
 * File created
 * ----------------------------------------------------------------------------
 */